A Concurrent Model for Imperative Languages with Improved Atomicity

نویسندگان

  • Keehang Kwon
  • Dae-Seong Kang
چکیده

We propose a new concurrent model for imperative languages where concurrency occurs at a subprogram level. This model introduces a new block sequential statement of the form ♯(G1, . . . , Gn) where each Gi is a statement. This statement tells the machine to execute G1, . . . , Gn sequentially and atomically (i.e., without interleaving). It therefore enhances atomicity and predictability in concurrent programming. We illustrate our idea via C‖, an extension of the core concurrent C with the new block sequential statement. key words: concurrency, imperative languages, block sequential.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Are new languages necessary for multicore?

ions for concurrency that we have chosen to use. The dominant one in use today for generalpurpose computing is threads. But non-trivial multi-threaded programs are incomprehensible to humans. It is true that the programming model can be improved through the use of design patterns, better granularity of atomicity (e.g. transactions), improved languages, and formal methods. However, these techniq...

متن کامل

Verifying Atomicity Specifications for Concurrent Object-Oriented Software Using Model-Checking

In recent work, Flanagan and Qadeer proposed atomicity declarations as a light-weight mechanism for specifying non-interference properties in concurrent programming languages such as Java, and they provided a type and effect system to verify atomicity properties. While verification of atomicity specifications via a static type system has several advantages (scalability, compositional checking),...

متن کامل

Granularity and Concurrent Separation Logic

When defining the semantics of shared-memory concurrent programming languages, one conventionally has to make assumptions about the atomicity of actions such as assignments. Running on physical hardware, these assumptions can fail to hold in practice, which puts in question reasoning about their concurrent execution. We address an observation, due to John Reynolds, that processes proved sound i...

متن کامل

A Comparison of Implicit and Explicit Parallel Programming

The impact of the parallel programming model on scientiic computing is examined. A comparison is made between Sisal, a functional language with implicit parallelism, and SR, an imperative language with explicit parallelism. Both languages are modern, high-level, concurrent programming languages. Five diierent scientiic applications were programmed in each language, and evaluated for programmabi...

متن کامل

Coqa: Concurrent Objects with Quantized Atomicity

This paper introduces a new language model, Coqa, for deeply embedding concurrent programming into objects. Every program written in our language has built-in the desirable behaviors of atomicity, mutual exclusion, and race freedom. A key property of our model is the notion of quantized atomicity: all concurrent program executions can be viewed as being divided into quantum regions of atomic ex...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • CoRR

دوره abs/1701.01785  شماره 

صفحات  -

تاریخ انتشار 2017